The overall capacities of broadband satellites are increasing exponentially, and such capacity increases present unique challenges in the associated ground system and network designs. The goal of the system designers, system operators, and service providers is to support and provide efficient, robust, reliable and flexible services, in a shared bandwidth network environment, utilizing such high capacity satellite systems. For example, in a network with multiple remote nodes (e.g., remote terminals) using shared bandwidth to attempt to send data into the network, quality of service (QoS) is required on every link of the network in each direction. Further, an appropriate bandwidth allocation mechanism is required to achieve the QoS requirements for interactive traffic and to optimize channel utilization (e.g., to increase bandwidth availability, while decreasing bandwidth waste).
The IEEE standard 802.1Q-2011 describes a protocol/algorithm for congestion management, which provides for detection of congestion for a LAN port queue, before the congestion reaches a level where packet dropping becomes necessary. This IEEE standard uses a congestion notification protocol to inform all inroute sources (which themselves may be Layer 2 switches) of the congested port. The inroute switches then take autonomous action to independently throttle back their traffic intended for the congestion point. Since these Layer 2 switches only have limited queue depth themselves, and limited knowledge of the network layer information, their decisions with regard to which packets to drop may be sub optimal and can compromise quality or service (QoS). While such may be acceptable for best-efforts traffic, such an approach may compromise QoS for higher priority traffic (e.g., requiring assured QoS). For mitigation, these switches may have more granular information (such as traffic type) in a Diff Serve Code Point (e.g., with 64 possible values) in the IP packet header, which would enable more intelligent dropping policy within the localized context of the switch. Such a mitigation approach, however, may or may not be as good as having complete network layer information (including network level routing and additional QoS policies), which a Layer 3 router typically may have knowledge of.
This approach, however, does not scale well for satellite networks which have a very large fan-in and fan-out connectivity per node (e.g., typically more than two to three orders of magnitude compared to their terrestrial counterparts). For example, a satellite system provides for potentially thousands of possible sources or terminals. In fact, all terminals in the system are potential sources for any or all of the satellite downlink ports. Terminals only request bandwidth and receive grants from a system controller for their uplinks, and then (under the 802.1Q approach) thousands of terminals potentially would have to independently decide how much to throttle back their traffic intended for the congested ports, which can result in incoherent, sub-optimal decisions at the system level and significantly inefficient bandwidth usage. Further, the added delay of satellite round-trips (especially for GEO satellites) further reduces performance of such distributed and difficult to coordinate decision making.
Further, existing ETSI/TIA RSM-A based satellite communications systems exhibit further limitations in congestion management. In the RSM-A system, the satellites have an on-board Layer 2 switch and an on-board bandwidth on demand resource allocation processor, which does not employ the congestion management approach of the IEEE 802.1Q standard. The on board Layer 2 switch of this ETSI/TIA RSM-A based satellite communications system marks congested downlinks with a bit in each transmitted packet, and receiving terminals are to notify source terminals of the congestion. Transmitting terminals then are required to independently throttle back traffic flow to the congested downlinks. Receiving terminals whose packets got dropped by the Layer 2 switch on board the satellite do not receive the bit. Problems include too much additional delay, an additional round trip delay in order to inform the source terminals of the congestion.
What is needed, therefore, is an approach for efficient management of congestion with respect to the downlink queues of packet switches in digital processing satellites and high altitude platforms, to assure differentiated Quality of Service (QoS) and efficient use of bandwidth in wireless microwave communications systems.
Some Example Embodiments
The present invention advantageously addresses the foregoing requirements and needs, as well as others, by providing approaches for efficiently managing congestion with respect to the downlink queues of packet switches in digital processing satellites and high altitude platforms to assure differentiated Quality of Service (QoS) and efficient use of bandwidth in wireless microwave communications systems.
Embodiments of the present invention provide new approaches for managing congestion on the downlink queues of digital processing satellites and high altitude platforms to assure differentiated Quality of Service (QoS) and efficient use of system bandwidth. Such approaches, for example, may be applied to Geostationary Earth Orbit (GEO) satellites, Low Earth Orbit (LEO) satellites, Mid Earth Orbit (MEO) satellites or High Altitude Platforms (HAP). By way of example, such approaches may be applied where multiple uplink and downlink beams are implemented in a mesh connected network enabled by a processing payload. By way of further example, in such systems, some beams may be used to support inter-satellite links (ISL), which also may benefit from congestion management.
In accordance with such example embodiments, approaches are provided for a congestion detection algorithm for detection of congestion in outroute port queues (associated with respective satellite downlink beams), of a Layer 2 switch on-board a processing satellite, before the congestion reaches the point of dropping packets. Such approaches employ congestion notification protocols to inform all inroute sources of the congested ports. The on-board Layer 2 switch sends congestion notifications to the on-board system controller. The system controller broadcasts a notification reflecting the report of contested ports/beams to source terminals. The source terminals then segregate bandwidth requests regarding traffic destined for congested beams from traffic destined to all uncongested beams, and categorize such requests based on respective traffic priority levels. The system controller makes bandwidth grants according to congestion (for example allowing only higher priority traffic on congested beams) to alleviate the congestion conditions of the respective ports/beams.
According to example embodiments, in a Layer 2 processing satellite system, the satellite may have an on-demand uplink and/or downlink resource manager, implemented within or configured to operate in conjunction with a system controller, on-board the satellite to which terminals send requests for uplink bandwidth. This system controller (SC) function may also be located on the ground in a hub or gateway station. Such an implementation allows the use of a compartmentalized architecture where onboard nodes provide Layer 2 data forwarding, while the control plane decision making is implemented in a separate and centralized node. The SC, under such software defined satellite networks, grants up link resources to the requesting terminals based on demand as well as traffic and terminal priority while leveraging additional system-wide information and historical network state and performance data. Example embodiments utilize this SC (and its system-wide knowledge), including the case of a constellation of satellites equipped with ISLs, in a new improved congestion mitigation protocol.
According to one example embodiment, the on-board Layer 2 switch of each satellite sends a congestion notification to the system controller. By way of example, this congestion notification contains the raw queue status for all the downlink queues. The system controller uses an algorithm to process all raw queue status and generate a system-wide list of congested downlinks for each traffic type which is broadcast to all of the sourcing terminals. Sourcing terminals segregate the traffic demand per traffic type for the congested links from all other traffic demand in their resource request messages. The system controller can thus allocate sufficient uplink resources to source terminals intended for uncongested downlinks but only allocate a portion of the requested bandwidth, to address higher priority traffic demand, for congested links. In this way the system controller can keep the downlink queues in the congested beams full without overflowing so that the satellite Layer 2 switch does not have to indiscriminately drop packets and at the same time ensuring a high quality of service for priority traffic classes. According to an alternate example embodiment, the on-board switch may broadcast the congestion notification simultaneously to the system controller and all the source terminals. This works well if the system controller is located on the ground rather than the satellite, and thus can further optimize decision making because of increased amount of system-wide information (both current and historical) and more software and hardware resources for rapid and more comprehensive decision making.
According to further embodiments, certain aspects of the present invention (e.g., the system controller based broadcast of congestion information), can also be applied to a network with Layer 3 processing to reduce the software and hardware implementation complexity of Layer 3 switches and routers on satellites and HAPs.
Such example embodiments provide various advantages, including mitigation of downlink congestion and ensuring differentiated QoS on a processing satellite or high altitude platform with multiple downlink beams and or inter-satellite links. The satellites can be in geostationary orbit or in a low earth or mid earth orbit, and the system may be a single platform system or a constellation.
According to an example embodiment, a method is provided for congestion management in a satellite communications system comprising a processing satellite, wherein the processing satellite comprises an on-board traffic switch. A utilized capacity level with respect to at least one outroute port of the traffic switch is determined. A capacity report is provided to a system controller, wherein the capacity report indicates the determined utilized capacity level for each port. It is then determined that one or more of the utilized capacity level(s) indicates a congestion condition of the respective port. A congestion notification is provided to one or more source satellite terminals (STs) that have data packets destined for at least one of the port(s) with respect to which the utilized capacity level indicates the congestion condition. A feedback report is received from each of the source STs to which the congestion notification report was provided, wherein each feedback report indicates a quantity of the data packets destined for each port exhibiting the congestion condition and a breakdown of each quantity of data packets by priority level. An uplink allocation is determined for each of the source STs that has data packets destined for port(s) exhibiting the congestion condition, wherein each uplink allocation is based on the feedback report received from the respective ST, and wherein the uplink allocation to all of the source STs is configured to alleviate the congestion condition of each port that exhibits the condition. The respective uplink allocation is sent to each of the source STs that has data packets destined for port(s) exhibiting the congestion condition.
Still other aspects, features, and advantages of the present invention are readily apparent from the following detailed description, simply by illustrating a number of particular embodiments and implementations, including the best mode contemplated for carrying out the present invention. The present invention is also capable of other and different embodiments, and its several details can be modified in various obvious respects, all without departing from the spirit and scope of the present invention. Accordingly, the drawing and description are to be regarded as illustrative in nature, and not as restrictive.